package codingInterview.leetcode.editor.cn;

//在字符串 s 中找出第一个只出现一次的字符。如果没有，返回一个单空格。 s 只包含小写字母。 
//
// 示例 1: 
//
// 
//输入：s = "abaccdeff"
//输出：'b'
// 
//
// 示例 2: 
//
// 
//输入：s = "" 
//输出：' '
// 
//
// 
//
// 限制： 
//
// 0 <= s 的长度 <= 50000 
// Related Topics 队列 哈希表 字符串 计数 👍 194 👎 0

import java.util.HashMap;
import java.util.Map;

//Java：面试题50 - 第一个只出现一次的字符
public class DiYiGeZhiChuXianYiCiDeZiFuLcof{
    public static void main(String[] args) {
                Solution solution = new DiYiGeZhiChuXianYiCiDeZiFuLcof().new Solution();
        // TO TEST
    }
    
    //leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    public char firstUniqChar(String s) {
        if(s.length()<1) return ' ';
        if(s.length()==1) return s.charAt(0);
        char[] chars = s.toCharArray();
        int[] count = new int[256];
        for (char ch : chars)
            count[ch]++;
        for (char ch : chars)
            if (count[ch] == 1) return ch;
        return ' ';
    }
}
//leetcode submit region end(Prohibit modification and deletion)

}
